Processing of preferred roaming lists

ABSTRACT

Processing of preferred roaming lists is disclosed. Usage data about wireless communication networks as utilized by a plurality of mobile apparatuses each associated with a set of subscriber identity modules performing subscriber identification and authentication in the wireless communication networks is gathered. Subscriber identity module-specific preferred roaming lists are updated on the basis of the usage data. The updated preferred roaming lists are distributed for use by the sets of the subscriber identity modules in the plurality of the mobile apparatuses.

FIELD

The invention relates to processing of preferred roaming lists, especially in a server apparatus and in a mobile apparatus.

BACKGROUND

Five previous US patent applications by the Applicant, Ser. Nos. 13/739,479, 13/739,449, 13/742,911, 13/851,405, and 13/855,255, disclose various apparatuses utilizing a set of subscriber identity modules (SIM) for one user of a mobile apparatus. A preferred roaming list on each subscriber identity module instructs the mobile apparatus of wireless communication networks and their utilization. However, as the subscriber identity modules are not designed for such sophisticated use as sets, the management of multiple subscriber identity modules and their preferred roaming lists requires further ideas.

BRIEF DESCRIPTION

The present invention seeks to provide an improved server apparatus, an improved mobile apparatus, and an improved method.

According to an aspect of the present invention, there is provided a server apparatus comprising: a data communication interface; one or more processors; and one or more memories including computer program code; the one or more memories and the computer program code configured to, with the one or more processors, cause the server apparatus at least to: receive, with the data communication interface, usage data about wireless communication networks as utilized by a plurality of mobile apparatuses each associated with a set of subscriber identity modules performing subscriber identification and authentication in the wireless communication networks; update subscriber identity module-specific preferred roaming lists on the basis of the usage data; and transmit, with the data communication interface, the updated preferred roaming lists for use by the sets of the subscriber identity modules in the plurality of the mobile apparatuses.

According to another aspect of the present invention, there is provided a mobile apparatus comprising: a data communication interface; one or more processors; and one or more memories including computer program code; the one or more memories and the computer program code configured to, with the one or more processors, cause the mobile apparatus at least to: transmit, with the data communication interface, usage data about wireless communication networks as utilized by the mobile apparatus associated with a set of subscriber identity modules performing subscriber identification and authentication in the wireless communication networks; and receive, with the data communication interface, updated preferred roaming lists for use by the set of the subscriber identity modules, which preferred roaming lists have been updated in a server apparatus on the basis of usage data about wireless communication networks as utilized by a plurality of mobile apparatuses each associated with a set of subscriber identity modules performing identification and authentication in the wireless communication networks.

According to another aspect of the present invention, there is provided a method comprising: gathering usage data about wireless communication networks as utilized by a plurality of mobile apparatuses each associated with a set of subscriber identity modules performing subscriber identification and authentication in the wireless communication networks; updating subscriber identity module-specific preferred roaming lists on the basis of the usage data; and distributing the updated preferred roaming lists for use by the sets of the subscriber identity modules in the plurality of the mobile apparatuses.

LIST OF DRAWINGS

Example embodiments of the present invention are described below, by way of example only, with reference to the accompanying drawings, in which

FIGS. 1, 2, 4, 5 and 6 illustrate example embodiments of a server apparatus and a mobile apparatus;

FIG. 3 illustrates an example embodiment of a wireless communication system;

FIG. 7 illustrates example embodiments relating to usage data and updated preferred roaming lists; and

FIG. 8 is a flow chart illustrating example embodiments of a method and example embodiments of both the server apparatus and the mobile apparatus.

DESCRIPTION OF EMBODIMENTS

The following embodiments are only examples. Although the specification may refer to “an” embodiment in several locations, this does not necessarily mean that each such reference is to the same embodiment(s), or that the feature only applies to a single embodiment. Single features of different embodiments may also be combined to provide other embodiments. Furthermore, words “comprising” and “including” should be understood as not limiting the described embodiments to consist of only those features that have been mentioned and such embodiments may contain also features/structures that have not been specifically mentioned.

It should be noted that while Figures illustrate various embodiments of a mobile apparatus 110 and a server apparatus 140, they are simplified block diagrams that only show some structures and functional entities. The connections shown in these Figures are logical connections; the actual physical connections may be different. It is apparent to a person skilled in the art that the described mobile apparatus 110 and the server apparatus 140 may also comprise other functions and structures. It should be appreciated that details of some functions, structures, and the protocols used for communication are irrelevant to the actual invention. Therefore, they need not be discussed in more detail here. Although the mobile apparatus 110 and the server apparatus 140 have been depicted as comprising separate single entities, different parts may be implemented in one or more physical or logical entities; it all depends on design choices and the required level of integration.

FIG. 1 illustrates example embodiments of an operation environment. Mobile apparatuses 110, 120 utilize a wireless communication network 100 with the help of a server apparatus 140. The mobile apparatuses 110, 120 communicate 154, 156, 158, 160 over a communication network 130 with each other. The communication network 130 may or may not comprise a part of the wireless communication network 100.

FIG. 2 illustrates the structures of the mobile apparatus 110 and the server apparatus 140 in more detail.

As shown in FIG. 1, each mobile apparatus 110, 120 comprises an interface 118, 128 to a set 112, 122 of subscriber identity (SIM) modules 114, 116, 124, 126 of the wireless communication network 100. The interface 118, 128 may or may not include a (contact) smart card reader capable of reading the subscriber data through the contacts of the integrated circuit.

The number of the mobile apparatuses 110, 120 may vary from 2 to N, wherein N is any integer greater than two.

The number of the subscriber identity modules 114, 116, 124, 126 may vary according to the circumstances, but there are at least three subscriber identity modules 114, 116, 124, 126 in each set 112, 122. One subscriber identity module may be a default subscriber identity module used normally (in user's home location or in a network where he/she has the coverage of the default subscriber identity module, for example). The number of the subscriber identity modules 114, 116, 124, 126 in each set 112, 122 may vary from 3 to K, wherein K is any integer greater than three.

In an example embodiment, the subscriber identity module 114, 116, 124, 126 is an integrated circuit storing subscriber data, which is network-specific information used to authenticate and identify subscribers on the network 100. The subscriber identity module 114, 116, 124, 126 may be embedded into a removable SIM card. First SIM cards were of credit card size, 85.60 mm×53.98 mm×0.76 mm, but a newer mini-SIM card is considerably smaller, 25 mm×15 mm×0.76 mm, or a micro-SIM card is even smaller, 15 mm×12 mm×0.76 mm. However, these measures are only example embodiments. It is also to be noted than one physical SIM card may include a number of different subscriptions: one SIM card may be a multi-IMSI SIM card having many different subscriber identities in the same card. Even a virtual subscriber identity module 114, 116, 124, 126 is feasible: it is a mobile phone number provided by a mobile network operator 102, 104 that does not require a SIM card to connect phone calls to the user's mobile terminal. In such a scenario, a memory of the mobile apparatus 110, 120 may be used to store subscriber data of the virtual subscriber identity module 114, 116, 124, 126 as required.

Besides preferred roaming lists 230, 232, the subscriber identity modules 114, 116, 124, 126 may also include other data enabling utilization 150, 152 of the wireless communication network 100 such as data relating to subscriber identification and authentication. Data relating to the subscriber identity modules 114, 116, 124, 126 may include, for example, a unique serial number (Integrated Circuit Card Identifier, ICCID) of the SIM card, internationally unique number of the subscriber (International Mobile Subscriber Identity, IMSI), security authentication and ciphering information for the subscriber (such as an authentication key Ki), temporary information related to the local network, a list of the services the subscriber has access to, an operator-specific emergency number, two passwords (personal identification number, PIN, for ordinary use, and PIN unlock code, PUK, for PIN unlocking), and other required data. The subscriber data may also include other carrier-specific data such as the short message service centre (SMSC) number, service provider name (SPN), service dialing numbers (SDN), advice-of-charge parameters, and value added service (VAS) applications. Further information may be found in the GSM Technical Specification 11.11.

Besides being called subscriber identity module, also other names and abbreviations may be used to refer to subscriptions. USIM (Universal Subscriber Identity Module) is an application for UMTS running on a UICC (Universal Integrated Circuit Card). The USIM is a logical entity on the physical card storing user subscriber information, authentication information, text messages, and phone book contacts. For authentication purposes, the USIM stores a long-term pre-shared secret key, which is shared with the Authentication Centre (AuC) in the network. The USIM also verifies a sequence number that must be within a range using a window mechanism to avoid replay attacks, and is in charge of generating the session keys to be used in the confidentiality and integrity algorithms of the KASUMI block cipher in UMTS. The equivalent of USIM on CDMA networks is CSIM.

The wireless communication system 100 may be any standard/non-standard/proprietary radio system that supports the use of the subscriber identity modules 114, 116, 124, 126. In the present, such a system may be any mobile telephone system, regardless of the generation (such as 2G, 3G, 4G, beyond 4G, etc.). Consequently, the wireless communication system may be GSM (Global System for Mobile Communications), WCDMA (Wideband Code Division Multiple Access), TD-SCDMA (Time Division Synchronous Code Division Multiple Access), or evolved universal terrestrial radio access (E-UTRA), also known as long term evolution (LTE) for example, or its recent LTE-Advanced versions (LTE-A). However, the example embodiments are not restricted thereto, but may be applicable to other suitable radio systems (in their present forms and/or in their evolution forms), such as universal mobile telecommunications system (UMTS) radio access network (UTRAN or EUTRAN), a system based on International Mobile Telecommunication (IMT) standard or any one of its evolution versions (e.g. IMT-Advanced), wireless local area network (WLAN) based on IEEE (Institute of Electrical and Electronics Engineers) 802.11 standard or its evolution versions (IEEE 802.11ac), worldwide interoperability for microwave access (WiMAX), Wi-Fi, 3GPP, Bluetooth®, or personal communications services (PCS).

As the mobile apparatus 110, 120 has the interface 118, 128 to the set 112, 122 of the subscriber identity modules 114, 116, 124, 126 the wireless communication network 100 accessible may be operated by one to M operators 102, 104, wherein M is any integer greater than one.

The operator (also known as mobile phone operator, mobile network operator, wireless service provider, wireless carrier, cellular company, or mobile network carrier) 102, 104 is a telephone company providing services for the subscriber. Some examples of the mobile phone operators include: China Mobile, Vodafone, Orange, TeliaSonera, T-Mobile, Verizon Wireless etc. The mobile phone operator 102, 104 gives the subscriber identity modules 114, 116, 124, 126 to the user, who inserts it into the mobile apparatus 110, 120 to gain access to the service. In the described embodiments, the mobile phone operators 102, 104 may first supply the service provider with at least some of the subscriber identity modules 114, 116, 124, 126, whereupon the service provider assembles a suitable set of the subscriber identity modules 114, 116, 124, 126, possibly with the mobile apparatus 110, 120 and gives them to the end-user for use. Other ways of supplying the subscriber identity modules 114, 116, 124, 126 to the end-user are also feasible: the service provider may give one or more subscriber identity modules 114, 116, 124, 126 to the end-user who will set them to the mobile apparatus 110, 120, for example. The mobile phone operator 102, 104 may either own the underlying network and spectrum assets required to run the service, or the mobile phone operator may be a virtual one, buying wholesale service from the mobile phone operator owning the underlying network and spectrum assets and selling on to its own customers. Even though connections between the subscriber identity modules 114, 116, 124, 126 and the operator infrastructure 102, 104 are not shown in FIG. 2, it is clear that such connections exist, as the subscriber identity modules 114, 116, 124, 126 remain, in general, under management of the operators; the service provider only supports their flexible use under varying circumstances.

The service provider is not illustrated in FIG. 1, but the service provider may be an independent supplier/vendor obtaining the subscriber identity modules 114, 116, 124, 126 from various network operators 102, 104 and compiling them into the sets 112, 122 marketed and sold to end-users (=subscribers).

In an example embodiment, the sets 112, 122 of the subscriber identity modules 114, 116, 124, 126 comprise prepaid subscriber identity modules obtained from various mobile phone operators 102, 104.

FIG. 3 illustrates an example of the radio system 302, LTE. The three basic elements of the radio system 302 are UE 300 (=mobile terminal), eNB (=base station) 304 in a radio network and an access gateway (a-GW) 306 in a core network. In such a division, the mobile apparatus 110 is either in the UE 300 or coupled to it, but not in the eNB 304 or in the a-GW 306.

The base station 304 may be called, depending on the system, a Node B, enhanced or evolved NodeB (eNB), a home eNode B (HeNB), an access point (AP), an IEEE 802.11 based access point, a femto node, a femto base station, or any other equipment belonging to the network infrastructure of the wireless communication network 100, and implementing the radio communication interface with the mobile terminal 300. Functionalities of the eNB 304 may include: all radio protocols, mobility management, all retransmissions, header compression, and packet data convergence protocols. The a-GW 306 provides the interface of the cellular radio system 302 to/from the other networks 312 such as the Internet. The a-GW 306 may be streamlined by separating the user and the control planes: a mobility management entity (MME) 308 is just a control plane entity and the user plane bypasses MME 308 directly to a serving gateway (S-GW) 310.

As illustrated in FIG. 2, the mobile apparatus 110 comprises a data communication interface 220, one or more processors 210, and one or more memories 200 including computer program code 202. Also the server apparatus 140 comprises a data communication interface 240, one or more processors 250, and one or more memories 260 including computer program code 262. The one or more memories 200 and the computer program code 202 of the mobile apparatus 110 are configured to, with the one or more processors 210, cause the mobile apparatus 110 to perform various operations to be explained. The one or more memories 260 and the computer program code 262 of the server apparatus 140 are configured to, with the one or more processors 250, cause the server apparatus 140 to perform various operations to be explained.

In an example embodiment illustrated in FIG. 4, the mobile apparatus 110 and/or the server apparatus 140 may be an electronic digital computer, which may comprise, besides the processor 210/250, a non-volatile memory 400 and a working memory 402 as the memory 200/260, and a system clock 410. Naturally, the computer may comprise a number of other peripheral devices, not illustrated here for the sake of clarity.

The term ‘processor’ 210/250 refers to a device that is capable of processing data. Depending on the processing power needed, the apparatus 110/140 may comprise several processors 210/250 such as parallel processors or a multicore processor. When designing the implementation of the processor 210/250, a person skilled in the art will consider the requirements set for the size and power consumption of the apparatus 110/140, the necessary processing capacity, production costs, and production volumes, for example. The processor 210/250 and the memory 200/260 may be implemented by an electronic circuitry.

In an example embodiment, the system clock 402 constantly generates a stream of electrical pulses, which cause the various transferring operations within the computer to take place in an orderly manner and with specific timing.

In an example embodiment, the processor 210/250 may be implemented as a microprocessor implementing functions of a central processing unit (CPU) on an integrated circuit. The CPU is a logic machine executing a computer program code 202/262. The program code 202/262 may be coded as a computer program using a programming language, which may be a high-level programming language, such as C, or Java, or a low-level programming language, such as a machine language, or an assembler. The CPU may comprise a set of registers 404, an arithmetic logic unit (ALU) 406, and a control unit (CU) 408. The control unit 408 is controlled by a sequence of the program code 202/262 transferred to the CPU from the working memory 402. The control unit 408 may contain a number of microinstructions for basic operations. The implementation of the microinstructions may vary, depending on the CPU design. The microprocessor 210/250 may also have an operating system (a dedicated operating system of an embedded system, or a real-time operating system), which may provide the computer program code 202/262 with system services.

A non-exhaustive list of implementation techniques for the processor 210/250 and the memory 200/260 includes, but is not limited to: logic components, standard integrated circuits, application-specific integrated circuits (ASIC), system-on-a-chip (SoC), application-specific standard products (ASSP), microprocessors, microcontrollers, digital signal processors, special-purpose computer chips, field-programmable gate arrays (FPGA), and other suitable electronics structures.

The computer program code 202/262 may be implemented by software and/or hardware. In an example embodiment, the software may be written by a suitable programming language, and the resulting executable code 202/262 may be stored on the memory 200/260 and run by the processor 210/250.

In an example embodiment, the functionality of the hardware may be designed by a suitable hardware description language (such as Verilog or VHDL), and transformed into a gate-level netlist (describing standard cells and the electrical connections between them), and after further phases the chip implementing the processor 210, memory 200 and the code 202 of the mobile apparatus 110 may be fabricated with photo masks describing the circuitry.

In an example embodiment, the processor 210 and the memory 200 of the mobile apparatus 110 are a part of a microcontroller.

The working memory 402 and the non-volatile memory 400 may be implemented by a random-access memory (RAM), dynamic RAM (DRAM), static RAM (SRAM), a flash memory, a solid state disk (SSD), PROM (programmable read-only memory), a suitable semiconductor, or any other means of implementing an electrical computer memory.

In an example embodiment, described in FIG. 2, the data communication interface 220, processor 210 and memory 200 are separate entities, communicatively coupled together by an appropriate serial bus, for example. In general interfaces between the various elements may be implemented with suitable interface technologies, such as a message interface, a method interface, a sub-routine call interface, a block interface, an appropriate serial/parallel bus, or any hardware/software means enabling communication between various sub-units of the mobile apparatus 110. However, in another example embodiment, there may not be a separate application processor, but the processor 210 and the memory 200 are located in a radio module together with the data communication interface 220 and a wireless transceiver.

An example embodiment illustrated in FIG. 2 provides a computer-readable medium 270, 280 for the mobile apparatus 110 and/or the server apparatus 140 comprising the computer program code 272, 282. Said computer program code 272, 282, when executed on the apparatus 110, 140, causes the apparatus 110, 140 to perform the operations required to implement the described example embodiments. In an example embodiment, the computer program code 272, 282 may be in source code form, object code form, executable file, or in some intermediate form. The computer-readable medium 270, 280 may comprise at least the following: any entity or device capable of carrying computer program code 272, 282 to the apparatus 110, 140, a record medium, a computer memory, a read-only memory, an electrical carrier signal, a telecommunications signal, and a software distribution medium. In some jurisdictions, depending on the legislation and the patent practice, the computer-readable medium 270, 280 may not be the telecommunications signal. In an example embodiment, the computer-readable medium 270, 280 may be a non-transitory computer readable storage medium.

In an example embodiment, the server computer 140 is any computing resource capable of processing information relating to the sets 112, 122 of the subscriber identity modules 114, 116, 124, 126 as a computer, a server computer, a cluster of computers, a computing cloud, a centralized computing resource, or a distributed computing resource, for example. In an example embodiment, the server apparatus 140 is the server part of the client-server computing model that acts as distributed application which partitions tasks or workloads between the provider of a resource or service, called the server 140, and the service requester, called the client 110, 120. The server apparatus 140 may be a host that is running one or more server programs which share their resources with clients 110, 120. The server apparatus 140 may also operate according to the cloud computing model implementing the network-based service, which appears to be provided by real hardware, but is in fact provided by virtual hardware, simulated by software running on one or more real computers. Naturally, besides these example embodiments of the server apparatus 140, other feasible computing architectures may be utilized as well to implement the hardware and software of the server apparatus 140. Consequently, besides operating according to the client/server architecture, push technology may be utilized as well. In push technology, the request for a transaction is initiated by the server apparatus 1400, whereas with the pull technology the request for the information is initiated by mobile apparatus 110, 120 (as in the client-server model).

FIG. 5 illustrates an example embodiment wherein the mobile apparatus 110 functionality is implemented in an accessory 500 of a mobile terminal 510. Consequently, the accessory 500 accommodates the set 112 of the subscriber identity modules 114, 116, and comprises one or more processors 210 and one or more memories 200 with the computer program code 202.

The accessory 500 may or may not comprise a battery 502, depending on the power requirements of the accessory 500 and the possibility to obtain electric energy from an external source such as the mobile terminal 510. The (rechargeable) electrical battery 502 may be one or more electrochemical cells that convert stored chemical energy into electrical energy. Instead of the battery 502, other suitable accumulator means may be used to store energy.

The interface 118 to the subscriber identity modules 114, 116 is within the accessory 500, but also another interface 528 to the subscriber identity module 530 possibly located in the mobile terminal 510 may be applicable.

Furthermore, both the mobile terminal 510 and the accessory 500 comprise a wired/wireless standard/proprietary communication protocol interface 220, 520 enabling two-way communication 506 between the mobile terminal 510 and the accessory 500. In an example embodiment, the interface 204, 220 is implemented as a serial or parallel communication bus, hardware line, an USB (Universal Serial Bus) cable with appropriate connectors, a SIM bus according to ISO/IEC 7816-3, a wireless Bluetooth link, a wireless WLAN (Wireless Local Area Network) link, a wireless Wi-Fi (Wireless Fidelity) link, a serial bus such as UART (Universal Asynchronous Receiver/Transmitter), I²C (Inter-Integrated Circuit) or SPI (System Packet Interface). The data relating to the subscriber identity module 114, 116 and the data relating to the mobile terminal 510 may be transferred between the mobile terminal 510 and the accessory 500 through the interfaces 220, 520.

In an example embodiment, the mobile terminal 510 may be a mobile wireless communications terminal employing a transceiver 518 capable of communicating with the wireless communication network 100. However, in another example embodiment, the mobile terminal 510 does not itself comprise a wireless transceiver 518, but, instead, the mobile terminal 510 communicates through a wireless transceiver 504 of the accessory 500. Accordingly, the mobile terminal 510 may be a portable computer, a tablet computer, or any other suitable mobile terminal capable of taking advantage of the set 112 of the subscriber identity modules 114, 116, but not necessarily itself including a transceiver capable of communicating with a wireless communication system 100.

In an example embodiment, the mobile terminal 510 is a computer, laptop computer, tablet computer, phablet, mobile phone, smartphone, general-purpose mobile computing device, or some other electronic apparatus enabling user interaction, for example. In an example embodiment, the mobile terminal 510 is a general-purpose off-the-shelf computing device, as opposed to a purpose-build proprietary equipment, whereby research & development costs will be lower as only the special-purpose software (and not the hardware) needs to be designed, implemented and tested. In an example embodiment, the mobile terminal 510 is a smartphone or a tablet employing a multi-touch display and a suitable operating system such as iOS, Android, or Windows Phone, for example. In an example embodiment, the mobile terminal 510 may comprise a default subscriber identity module 530, a user interface 516, a battery 512, one or more processors 522 and one or more memories 524 with computer program code 526.

The user interface 516 may comprise a display, means for producing sound, a keyboard, and/or a keypad, for example. The display may be a liquid crystal display, for example, but it may also be implemented by any appropriate prior art technique, such as with an active-matrix organic light-emitting diode. The display may also incorporate other user interaction means, such as touch input, or haptic feedback, i.e. the display may be a touch screen. The means for producing sound may be a loudspeaker or a simpler means for producing beeps or other sound signals. The keyboard/keypad may comprise a complete (QWERTY) keyboard, a mere numeric keypad or only a few push buttons and/or rotary buttons. In addition, the user interface 516 may comprise other user interface elements, for example various means for focusing a cursor (mouse, track ball, various arrow keys, touch sensitive area etc.) or elements enabling audio control. A parameter, setting or command relating to the described processing of the subscriber identity modules 114, 116 may be manipulated with the user interface 516.

Furthermore, the mobile terminal 510 may comprise a positioning receiver 514 receiving external location information, which may be utilized to generate location of the mobile terminal 510. The positioning receiver 514 may be a receiver of a global navigation satellite system (GNSS). Such a system may be the Global Positioning System (GPS), the Global Navigation Satellite System (GLONASS), the Galileo Positioning System (Galileo), the Beidou Navigation System, The Quasi-Zenith Satellite System (QZSS), or the Indian Regional Navigational Satellite System (IRNSS), for example. The positioning receiver 514 determines its location (longitude, latitude, and altitude) using signals transmitted from satellites orbiting the earth. Besides global navigation satellites, the positioning receiver 514 may also determine its location by utilizing other known positioning techniques. It is well known that by receiving radio signals from several different base stations, a mobile phone may determine its location, for example.

In the example embodiment of FIG. 5, the accessory 500 does not comprise a user interface of its own, but the user interaction is performed through the user interface 516 of the mobile terminal 510 as data may be transferred between the accessory 500 and the mobile terminal 510 through the interfaces 220, 520. However, in another example embodiment, the accessory 500 may comprise a user interface 508 as well for outputting and/or inputting data relating to the described processing of the subscriber identity modules 114, 116.

In the example embodiment of FIG. 5, the mobile apparatus 110 functionality may be implemented in the accessory 500 such that the computer program code 202 is run in the one or more processors 210 of the accessory 500. However, also such an example embodiment is feasible wherein a part of the mobile apparatus 110 functionality is implemented in the mobile terminal 510 as well such that a part of the computer program code is also run in the at one or more processors 522 of the mobile terminal 510.

In an example embodiment, the accessory 500 comprises a wireless transceiver 504 coupled with the data communication interface 220, whereby the accessory 500 may communicate directly with the server apparatus 140 without having to pass the information through the mobile terminal 510 (even if the mobile terminal comprises the wireless transceiver 518).

In an example embodiment, the accessory 500 is a kind of container including the subscriber identity modules 114, 116 to be used by the mobile terminal 510, but the required processing is performed only in the one or more processors 522 of the mobile terminal 510, i.e. the accessory 500 does not comprise the processor or the memory with the computer program code. The data relating to the subscriber identity modules 114, 116 may be transferred from the accessory 500 to the mobile terminal 510 through the interfaces 220, 520.

In an example embodiment the mobile apparatus 110 functionality is implemented in an accessory 500 acting as a USB (Universal Serial Bus) modem. The USB modem 500 may or may not comprise a battery, depending on the power requirements of the USB modem 500 and the possibility to obtain electric energy from an external source such as a mobile terminal 510. Furthermore, the USB modem 500 comprises a USB interface 220 capable of being coupled 506 through a USB cable and appropriate connectors to a USB interface 520 of the mobile terminal 510.

FIG. 6 illustrates an example embodiment wherein the mobile apparatus 110 functionality is implemented to a mobile terminal 600. Consequently, the mobile terminal 600 comprises the interface 118 to the set 112 of the subscriber identity modules 114, 116 of the wireless communication system 100, the one or more processors 210, and the one or more memories 200 storing the computer program code 202. The mobile terminal 600 may also comprise at least some of the other parts 512, 514, 516, 518, 528, 530.

To summarize, in an example embodiment, the mobile apparatus 110, 120 comprises at least one of the following: a mobile wireless communications terminal 600, an accessory 500 of a mobile wireless communications terminal 510, a combination of a mobile wireless communications terminal 510 and an accessory 500 of the mobile wireless communications terminal 510, an accessory of a mobile terminal 500, a combination of a mobile terminal 510 and an accessory 500 of the mobile terminal 510, a Universal Serial Bus USB modem 500. Furthermore, in an example embodiment, each set 112, 122 of the subscriber identity modules 114, 116, 124, 126 is accommodated by a mobile terminal 600 and/or an accessory 500 of a mobile terminal 510.

Now that the operation environment, the mobile apparatus 110 and the server apparatus 140 have been described, we may continue by describing the dynamic functionality of the mobile apparatus 110 and the server apparatus 140 with reference to FIG. 2.

The mobile apparatus 110 and the server apparatus 140 perform a five-step sequence of message exchanges and processing in order to improve the utilization of the wireless communication networks 100 with the updated preferred roaming lists 230, 232.

First, the mobile apparatus 110 is caused to transmit 212, with the data communication interface 220, usage data 154 about wireless communication networks 100 as utilized by the mobile apparatus 110 associated with the set 112 of subscriber identity modules 114, 116 performing subscriber identification and authentication in the wireless communication networks 100.

Second, the server apparatus 140 is caused to receive 252, with the data communication interface 240, usage data 154, 158 about wireless communication networks 100 as utilized by the plurality of the mobile apparatuses 110, 120 each associated with the set 112, 122 of the subscriber identity modules 114, 116, 124, 126 performing subscriber identification and authentication in the wireless communication networks 100.

Third, the server apparatus 140 is caused to update 254 subscriber identity module-specific preferred roaming lists on the basis of the usage data 154, 158.

Fourth, the server apparatus 140 is caused to transmit 256, with the data communication interface 240, the updated preferred roaming lists 156, 160 for use by the sets 112, 122 of the subscriber identity modules 114, 116, 124, 126 in the plurality of the mobile apparatuses 110, 120.

Fifth, the mobile apparatus 110 is caused to receive 214, with the data communication interface 220, updated preferred roaming lists 156, 230, 232 for use by the set 112 of the subscriber identity modules 114, 116, which preferred roaming lists 230, 232 have been updated in the server apparatus 140 on the basis of the usage data 154, 158 about the wireless communication networks 100 as utilized by the plurality of the mobile apparatuses 110, 120 each associated with the set 112, 122 of the subscriber identity modules 114, 116, 124, 126 performing identification and authentication in the wireless communication networks 100.

With the described five-step sequence at least one of the following advantages may be obtained: the connection set-up may be faster, the connection set-up may be more reliable, the connection may be more reliable, the connection may better match with the subscriber and/or service provider preferences. This is achieved with the server apparatus 140, which collects the information from the plurality of subscribers and possibly also from other sources, and then based on this more complete information updates the preferred roaming lists, something which the single mobile apparatus 110 is not capable of performing. In effect, the server apparatus 140 performs the data collection and analysis with a synergistic view.

FIG. 7 illustrates example embodiments relating to the usage data 154 and the updated preferred roaming lists 156.

If required, further information of the preferred roaming lists 156 may be obtained from relevant (telecommunications) standards, for example.

One such standard is “PRL Design, Maintenance and Testing, CDG Document 140, Version 1.1., 17 Aug. 2006” published by CDMA Development Group (at the time of writing this document in address www.cdg.org).

In an example embodiment, the preferred roaming list 230, 232 on each subscriber identity module 114, 116, 124, 126 instructs the mobile apparatus 110, 120 of wireless communication networks 100 and their utilization.

In an example embodiment, the preferred roaming list 230, 232 comprises information used during the selection and acquisition of the wireless communication network 100.

In an example embodiment, the preferred roaming list 230, 232 indicates which radio frequency bands, sub bands and service provider identifiers will be scanned while accessing (initially and during roaming) the wireless communication networks 100. The preferred roaming list 230, 232 may also give a priority order of the scanning.

In an example embodiment, the preferred roaming list 230, 232 enables roaming which means that the subscriber may obtain service outside of the home area. A user typically residing in Finland may access the local wireless communication network 100 with the first subscriber identity module 114 of the set 112, and as the user roams to London, England, s/he may access the local wireless communication network 100 with another subscriber identity module 116 of the set 112, for example.

In an example embodiment, the one or more memories 200 and the computer program code 202 are further configured to, with the one or more processors 210, cause the mobile apparatus 110 further to detect roaming of the mobile terminal, and to initiate a selection of the at least one optimal subscriber identity module 114, 116 for use by the mobile terminal. Roaming is the ability for a cellular customer to automatically make and receive voice calls, send and receive data, or access other services when travelling outside the geographical coverage area of the home network, by means of using a visited network. Roaming is technically supported by mobility management, authentication and billing procedures. If the visited network is in the same country as the home network, this is known as National Roaming. If the visited network is outside the home country, this is known as International (or Global) Roaming. If the visited network operates on a different technical standard than the home network, this is known as Inter-standard roaming. GSM Coverage Maps is a unique resource containing information supplied and approved by the members of the GSM Association. Network, services and roaming information are continually updated to reflect the evolving situation worldwide.

For example: the accessory 500 may inactivate the mobile terminal 510, and scan SIM data from the set of available subscriber identity modules 114, 116 that are located in the accessory 500. Next, the accessory 500 may ask available networks from the mobile terminal 510, whereupon the mobile terminal 510 returns the available networks to the accessory 500. The accessory 500 then selects at least one optimal subscriber identity module 114, 116 for use by the mobile terminal as the active SIM on the basis of the data relating to the subscriber identity modules 114, 116 and at least one selection ground for the subscriber identity module. After the suitable subscriber identity module 114 is selected as active, the accessory 500 instructs the mobile terminal 510 to reconnect to the network 100 with the optimal active subscriber identity module 114 such that the operator 102 is selected on the basis of the updated preferred roaming list 230 of the selected subscriber identity module 114.

The selection ground for the subscriber identity module may comprise a network coverage criterion, available services criterion, quality of service criterion, costs of using the subscriber identity module criterion, location of the mobile terminal criterion etc. The various criteria may be used alone or in combination. A simple selection ground could be formulated as follows: “use the cheapest subscriber identity module 114., 116 that provides the required service at the required quality of service in the present location of the mobile terminal by network operator A if available, and if operator A is not available then by any other operator fulfilling the criteria”, but this is only an example embodiment, as the selection ground may be made much simpler but also much more complex. But, as understood, the selection procedure utilizing a selection ground is augmented with the preferred roaming lists 230, 232.

In an example embodiment, the preferred roaming list 156 comprises a list 710 of prioritized wireless communication networks 100 permitted to access. For example: first, access the wireless communication network 100 of the first operator 102, and second, access the wireless communication network 100 of the other operator 104 (if the first operator 102 network 100 is unavailable).

In an example embodiment, the preferred roaming list 156 further comprises a list of wireless communication networks 100 forbidden to access. For example: do not access the wireless communication network 100 of a specific operator.

In an example embodiment, each updated preferred roaming list 156 is a subscriber identity module-specific preferred roaming list 714. This may mean that each subscriber identity module 114, 116 comprises its own preferred roaming list 230, 232 as illustrated in FIG. 2. As illustrated in FIG. 7, the subscriber identity modules 114, 116 may be arranged into different groups. Each subscriber may have an own collection of subscriber identity module-specific preferred roaming lists 716 as the subscriber has the subscriber identity modules 114, 116 as the set 112. Additionally, the subscriber identity module-specific preferred roaming lists 714 may be grouped in an area-specific fashion 718: certain preferred roaming lists (and, consequently, certain subscriber identity modules) are valid for a certain geographic area (London etc.). Additionally, or alternatively, the subscriber identity module-specific preferred roaming lists 714 may be grouped in a group-specific fashion: certain preferred roaming lists (and, consequently, certain subscriber identity modules) are valid for a certain subscriber group (users of a specific corporation or company etc.).

In an example embodiment, the usage data 154 comprises preferred roaming lists 230, 232 obtained from the subscriber identity modules 114, 116, 124, 126 belonging to the sets 112, 122.

In an example embodiment, a preferred roaming list 230, 232 of a specific subscriber identity module 114, 116 has been updated during use on the basis of success of use of a specific wireless communication network 100 accessed with the specific subscriber identity module 114, 116.

In an example embodiment, the usage data 154 comprises information on at least one of the following relating to the utilization of the wireless communication networks 100: connectivity 700, connection performance 702, connection quality 704. Connectivity 700, connection performance 702 and connection quality 704 determine characteristics of a radio link between the mobile terminal 300 and the base station 304 based on real experience gathered during the utilization of the wireless communication networks 100 with the set 112 of subscriber identity modules 114, 116.

In an example embodiment, the usage data 154 comprises general data about the wireless communication networks 100 as gathered by the server apparatus 140 from various sources. For example: the operators 102, 104 may provide up-to-date information about costs, availability, functioning, downtime, rush hours, hot spots and other things which affect the performance of the wireless communication networks 100, and, consequently, may have an influence on the preferred roaming lists 230, 232, on the contents of the list 710 of the prioritized wireless communication networks 100 permitted to access and/or on the list 712 of the wireless communication networks 100 forbidden to access, for example.

Next, let us study FIG. 8, which is a flow chart illustrating example embodiments of a method and example embodiments of both the server apparatus 140 and the mobile apparatus 110. The operations are not strictly in chronological order, and some of the operations may be performed simultaneously or in an order differing from the given ones. Other functions may also be executed between the operations or within the operations and other data exchanged between the operations. Some of the operations or part of the operations may also be left out or replaced by a corresponding operation or part of the operation. It should be noted that no special order of operations is required, except where necessary due to the logical requirements for the processing order. In an example embodiment, the method may be implemented by an electronic apparatus, by the described server apparatus 140 and/or by the mobile apparatus 110, for example.

The method starts in 800.

In 802, usage data about wireless communication networks 100 as utilized by the plurality of mobile apparatuses 110, 120 each associated with the set 112, 122 of subscriber identity modules 114, 116, 124, 126 performing subscriber identification and authentication in the wireless communication networks 100 is gathered.

In an example embodiment of 814, the usage data is transmitted by the plurality of the mobile apparatuses 110, 120.

In an example embodiment of 816, the usage data is received by the server apparatus 140.

In 804, subscriber identity module-specific preferred roaming lists are updated on the basis of the usage data. In an example embodiment, the update is performed in the server apparatus 140.

In 806, the updated preferred roaming lists are distributed for use by the sets 112, 122 of the subscriber identity modules 114, 116, 124, 126 in the plurality of the mobile apparatuses 110, 120. In an example embodiment, the updated preferred roaming lists are transmitted by the server apparatus 140 and received by the plurality of the mobile apparatuses 110, 120.

The method ends in 808.

The operations 802-804-806 and the supplementary operations may be repeated 810 as required.

The already described example embodiments of the server apparatus 140 and the mobile apparatus 120 and the example embodiments that will be described in the following for the server apparatus 140 and the mobile apparatus 110 may be utilized to enhance the method with various further example embodiments. For the sake of keeping the description compact, the description that follows for FIGS. 8 will explain the example embodiments for the server apparatus 140 and the mobile apparatus 100 but at the same time refer to the flow-chart of FIG. 8.

In an example embodiment of 812, prior to receiving the usage data, the server apparatus 140 requests the usage data from the plurality of the mobile apparatuses 110, 120.

In an example embodiment of 818 and 822, prior to updating the subscriber identity module-specific preferred roaming lists, the server apparatus 140 analyses the usage data in order to rank the wireless communication networks 100 into a ranking order, and updates the subscriber identity module-specific preferred roaming lists on the basis of usage data such that the ranking order is followed.

In an example embodiment of 820 and 824, prior to updating the subscriber identity module-specific preferred roaming lists, the server apparatus 140 receives, with the data communication interface 240, general data about the wireless communication networks 100, and updates the subscriber identity module-specific preferred roaming lists on the basis of the usage data and further on the basis of the general data.

In an example embodiment of 826, the server apparatus 140 transmits, with the data communication interface 240, the updated preferred roaming lists for use by the sets 112, 122 of the subscriber identity modules 114, 116, 124, 126 in the plurality of the mobile apparatuses 110, 120 such that the updated preferred roaming lists are preloaded in the subscriber identity modules 114, 116, 124, 126 of the set 112, 122 being accommodated in the mobile apparatus 110, 120. The preloading may be done in the installation process of the new mobile apparatus 110, 120: the service provider may purchase large quantities of subscriber identity modules 114, 116, 124, 126 and place them into the mobile apparatus 110, 120, which is then sold and delivered to the user ready for use.

In a further example embodiment of 826, the updated preferred roaming lists are preloaded simultaneously in the plurality of the sets 112, 122 of the subscriber identity modules 114, 116, 124, 126. In an example embodiment, the subscriber identity modules 114, 116, 124, 126 are placed into the mobile apparatus 110, 120, whereupon the server apparatus 140 broadcasts the preferred roaming lists and the mobile apparatuses 110, 120 received the preferred roaming lists with wireless transceivers.

It is to be noted that these two last example embodiments may be a part of another example embodiment, which may be implemented in a stand-alone fashion, i.e. independent of the other example embodiments described in this application.

This other, stand-alone example embodiment offers a way to configure the mobile apparatus 110 before the use, in a factory, for example.

Normally, the end user configures a new subscriber identity module after received from an operator. Typically s/he sets it into a SIM slot of a mobile terminal, switches on the mobile terminal, and inputs the PIN code of the SIM. Then the mobile terminal connects the SIM to the operator. The operator may acknowledge that by an SMS message. The SIM card may send an activation SMS message, and receive a response SMS message. Other ways are also possible with different types of SIMs, especially with prepaid SIMs. If the mobile terminal has two SIM cards, the first SIM is configured first and after that the second SIM is configured as needed and instructed.

As explained in this application, a mobile apparatus 110 may contain many SIM cards and these or some of them are preinstalled in the manufacturing line of the service provider. The SIM cards are typically also different, requiring different configuring procedures.

The production configuration managing device configures all the SIM cards automatically. It reads and detects the SIM cards in the mobile apparatus 110. It has a list of instructions to the each SIM card. Also it has process steps and a time consumed for each configuration step for each SIM card.

The process steps and the time needed may be obtained by having a test sequence or measuring the time needed to each process step during the configuration process.

Based on the test sequence needed by each SIM card, the configuration process is optimized by doing parallel SIM configuration for more than one SIM card. For example, when waiting an SMS message response from an operator, another SIM card configuration is going on with inputting a PIN code.

During the process, the configuration managing device collects information about the time consumed for each process step, success of the configuration, failures or repeated process steps and other quality information.

The production device configures one or more SIM cards according the instructions automatically.

The production device may configure two or more SIM cards simultaneously.

The production device optimizes configuration procedure and steps according to the instructions for each SIM card type.

An optimizing parameter is a configuration time for the whole SIM card device.

The production device records time and quality parameters related to the configuration procedure.

A quality parameter indicates successful or unsuccessful connection to an operator, a configuration result, and/or a number of repeated process steps.

The production device may analyze and create a report of recorded time and quality parameters.

The production device utilizes new data of analyzed time and quality parameters.

The configuration process may be as follows:

set SIM cards to slots of the mobile apparatus 110;

couple the mobile apparatus 110 with the production apparatus;

switch the mobile apparatus 110 on;

the production device checks and reads the SIM cards in the mobile apparatus 110;

the production device reads the instructions from its memory;

the production device optimizes the configuration procedure;

the production device configures the SIM cards and keeps records of time and success of the process steps; and

the production device saves time and quality parameters in its memory.

It will be obvious to a person skilled in the art that, as technology advances, the inventive concept can be implemented in various ways. The invention and its embodiments are not limited to the example embodiments described above but may vary within the scope of the claims. 

1. A server apparatus comprising: a data communication interface; one or more processors; and one or more memories including computer program code; the one or more memories and the computer program code configured to, with the one or more processors, cause the server apparatus at least to: receive, with the data communication interface, usage data about wireless communication networks as utilized by a plurality of mobile apparatuses each associated with a set of subscriber identity modules performing subscriber identification and authentication in the wireless communication networks; update subscriber identity module-specific preferred roaming lists on the basis of the usage data; and transmit, with the data communication interface, the updated preferred roaming lists for use by the sets of the subscriber identity modules in the plurality of the mobile apparatuses.
 2. The server apparatus of claim 1, wherein the preferred roaming list comprises a list of prioritized wireless communication networks permitted to access.
 3. The server apparatus of claim 2, wherein the preferred roaming list further comprises a list of wireless communication networks forbidden to access.
 4. The server apparatus of claim 1, wherein the usage data comprises preferred roaming lists obtained from the subscriber identity modules belonging to the sets.
 5. The server apparatus of claim 4, wherein a preferred roaming list of a specific subscriber identity module has been updated during use on the basis of success of use of a specific wireless communication network accessed with the specific subscriber identity module.
 6. The server apparatus of claim 1, wherein the usage data comprises information on at least one of the following relating to the utilization of the wireless communication networks: connectivity, connection performance, connection quality.
 7. The server apparatus of claim 1, wherein each set of the subscriber identity modules is accommodated by a mobile terminal and/or an accessory of a mobile terminal.
 8. The server apparatus of claim 1, wherein the one or more memories and the computer program code are further configured to, with the one or more processors, cause the server apparatus further to: prior to receiving the usage data, request the usage data from the plurality of the mobile apparatuses.
 9. The server apparatus of claim 1, wherein the one or more memories and the computer program code are further configured to, with the one or more processors, cause the server apparatus further to: prior to updating the subscriber identity module-specific preferred roaming lists, analyse the usage data in order to rank the wireless communication networks into a ranking order; and update the subscriber identity module-specific preferred roaming lists on the basis of usage data such that the ranking order is followed.
 10. The server apparatus of claim 1, wherein the one or more memories and the computer program code are further configured to, with the one or more processors, cause the server apparatus further to: prior to updating the subscriber identity module-specific preferred roaming lists, receive, with the data communication interface, general data about the wireless communication networks; and update the subscriber identity module-specific preferred roaming lists on the basis of the usage data and further on the basis of the general data.
 11. The server apparatus of claim 1, wherein the one or more memories and the computer program code are further configured to, with the one or more processors, cause the server apparatus further to: transmit, with the data communication interface, the updated preferred roaming lists for use by the sets of the subscriber identity modules in the plurality of the mobile apparatuses such that the updated preferred roaming lists are preloaded in the subscriber identity modules of the set being accommodated in the mobile apparatus.
 12. The server apparatus of claim 11, wherein the updated preferred roaming lists are preloaded simultaneously in the plurality of the sets of the subscriber identity modules.
 13. A mobile apparatus comprising: a data communication interface; one or more processors; and one or more memories including computer program code; the one or more memories and the computer program code configured to, with the one or more processors, cause the mobile apparatus at least to: transmit, with the data communication interface, usage data about wireless communication networks as utilized by the mobile apparatus associated with a set of subscriber identity modules performing subscriber identification and authentication in the wireless communication networks; and receive, with the data communication interface, updated preferred roaming lists for use by the set of the subscriber identity modules, which preferred roaming lists have been updated in a server apparatus on the basis of usage data about wireless communication networks as utilized by a plurality of mobile apparatuses each associated with a set of subscriber identity modules performing identification and authentication in the wireless communication networks.
 14. A method comprising: gathering usage data about wireless communication networks as utilized by a plurality of mobile apparatuses each associated with a set of subscriber identity modules performing subscriber identification and authentication in the wireless communication networks; updating subscriber identity module-specific preferred roaming lists on the basis of the usage data; and distributing the updated preferred roaming lists for use by the sets of the subscriber identity modules in the plurality of the mobile apparatuses. 